package com.ruoyi.erp.mapper;

import java.util.List;

import com.ruoyi.erp.domain.ProjectMember;
import org.apache.ibatis.annotations.Param;

/**
 * 项目成员/外派人员Mapper接口
 * 
 * @author sauger
 * @date 2022-03-15
 */
public interface ProjectMemberMapper 
{
    /**
     * 查询项目成员/外派人员
     * 
     * @param id 项目成员/外派人员主键
     * @return 项目成员/外派人员
     */
    public ProjectMember selectProjectMemberById(Integer id);

    /**
     * 查询项目成员/外派人员列表
     * 
     * @param projectMember 项目成员/外派人员
     * @return 项目成员/外派人员集合
     */
    public List<ProjectMember> selectProjectMemberList(ProjectMember projectMember);

    /**
     * 新增项目成员/外派人员
     * 
     * @param projectMember 项目成员/外派人员
     * @return 结果
     */
    public int insertProjectMember(ProjectMember projectMember);

    /**
     * 修改项目成员/外派人员
     * 
     * @param projectMember 项目成员/外派人员
     * @return 结果
     */
    public int updateProjectMember(ProjectMember projectMember);

    /**
     * 删除项目成员/外派人员
     * 
     * @param id 项目成员/外派人员主键
     * @return 结果
     */
    public int deleteProjectMemberById(Integer id);

    /**
     * 批量删除项目成员/外派人员
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteProjectMemberByIds(String[] ids);

    /**
     * 返回需要初始化月账单的外派员工
     * @param year
     * @param month
     * @return
     */
    public List<ProjectMember> selectProjectMembersNeedInitBill(@Param("year") Integer year, @Param("month") Integer month, @Param("head") String head , @Param("tail") String tail);

}
